#ifndef ENTRYMANAGER_H
#define ENTRYMANAGER_H
#include <Entry.h>
#include <sstream>
#include <iostream>
#include <string>

using namespace std;
//EntryManager is a friend class of Entry, so it can access all attributes of Entry
class EntryManager
{
	static const int MAX_SIZE= 429496729;
	static char _buffer[MAX_SIZE];
	static const string MSG_OUTPUT;
public:
	EntryManager(void);
	~EntryManager(void);

	static Entry* compareEntry(Entry*,Entry*);
	static Entry* compareByType(Entry*, Entry* );
	static Entry* compareByStartDate(Entry*,Entry*);
	static Entry* compareByStartTime(Entry*,Entry*);
	static Entry* compareByEndTime(Entry*,Entry*);
	static Entry* compareByEndDateTime(Entry*, Entry*);
	static Entry* compareByName(Entry*,Entry*);
	static Entry* compareByStatus(Entry*,Entry*);
	static bool greater(const Entry*,const Entry*);
};

#endif